Desktop and laptop personal computer systems typically utilize a Basic Input/Output System (“BIOS”). The BIOS performs functions for initializing the hardware of the computer system, performing a Power On Self-Test (“POST”), providing a defined interface for accessing hardware features to an operating system, and others. The legacy system BIOS specification did not define any mechanism for permitting computer system add-in cards, such as Peripheral Component Interconnect (“PCI”) cards, to permanently allocate memory from the host computer for use during POST and operating system execution. The PCI Firmware Specification, Version 3.0, introduced a feature by which an add-in card can permanently allocate memory from a host computer. However, the maximum memory that can be allocated using this feature is only 40 kilobytes (“K”), which is insufficient for the operation of many add-in cards.
In order to address the problem described above, some add-in card manufacturers simply added more random access memory (“RAM”) to their add-in cards. However, the addition of RAM may add a significant expense to the cost of an add-in card. Another solution to the problem described above is to customize the operation of the system BIOS to allow PCI devices to permanently allocate large amounts of memory. This solution, however, is only viable for PCI devices that exist on the same motherboard as the custom system BIOS and the system RAM. As a result, there is currently no mechanism available for computer system add-in cards to permanently allocate host memory in amounts greater than 40K.
It is with respect to these and other considerations that the disclosure presented herein has been made.